#ifndef __OSAL_MSG_H
#define __OSAL_MSG_H
#include "OSAL_MSG.h"
#include "OSAL.h"
#include "stdlib.h"
#include "sys.h"
#include "misc.h"


struct osal_msg_t{
    void * msgPtr;
    uint32_t len;
    uint16_t destTaskID;
    void * next;
};





void osal_msg_init(void);

struct osal_msg_t * osal_msg_allocate(void);

void osal_msg_delete(uint16_t destTaskID);

void osal_msg_send(uint16_t destTaskID, struct osal_msg_t * msg);

struct osal_msg_t * osal_msg_recevie(void);

void osal_msg_clear(void);


#endif